package gurulab.maya.core.ws;

// Version 1

/**
 * @version 1
 */
public interface MayaI{

//
//  pasaporte: Identificacion del pasaporte a utilizar para envio de mensajes</p>
//  password: Clave secreta para autenticacion</p>
//  codPaisDest: Codigo de Pais del numero destinatario</p>
//  codAreaDest: Codigo de area del numero destinatario</p>
//  numeroDest: Numero telefonico a quien va dirigido el mensaje</p>
//  mensaje: Mensaje a ser enviado</p>
//  Retorna: 0 Exito; -101 Error interno; -104 Destino no aceptado por el operador; -105 Usuario no autenticado; -204 Codigo de pais no soportado; -205 Codigo de area no soportado; -206 Numero no soportado; -207 Mensaje rechazado

	/**	
	 * @param pasaporte Identificacion del pasaporte a utilizar para envio de mensajes / Passport identification of using the service
	 * @param password Clave secreta para autenticacion / Password for user authentication
	 * @param codPaisDest Codigo de Pais del numero destinatario / Destination Country Code
	 * @param codAreaDest Codigo de area del numero destinatario / Destination Area Code
	 * @param numeroDest Numero telefonico a quien va dirigido el mensaje / Destination phone number
	 * @param mensaje Mensaje a ser enviado / Message to send
	 * @return 0 Exito; -101 Error interno; -104 Destino no aceptado por el operador; -105 Usuario no autenticado; -204 Codigo de pais no soportado; -205 Codigo de area no soportado; -206 Numero no soportado; -207 Mensaje rechazado
	 */



    public int enviarSMS(String pasaporte, String password, String codPaisDest, String codAreaDest, String numeroDest, String mensaje);

//
// pasaporte: Identificacion del pasaporte a utilizar para envio de mensajes </p>
// password: Clave secreta para autenticacion </p>
// receptor: URL del Servicio Web que cumple con el WSDL http://mercurio.twindivision.com/mdk/receptor.wsdl </p>
// clave: Clave con la que el receptor sabra que Maya es quien le entrega el mensaje </p>
// Retorna: 0 Exito; -101 Error interno; -105 Usuario no autenticado; -106 Servicio no disponible; -201 Recepcion estaba en proceso


	/**	
	 * @param pasaporte Identificacion del pasaporte a utilizar para envio de mensajes / Passport identification of using the service
	 * @param password Clave secreta para autenticacion / Password for user authentication
	 * @param receptor URL del Servicio Web que cumple con el WSDL http://mercurio.twindivision.com/mdk/receptor.wsdl / URL of the Web Service that fulfills the WSDL http://mercurio.twindivision.com/mdk/receptor.wsdl
	 * @param clave Clave con la que el receptor sabra que Maya es quien le entrega el mensaje / Identification used by the user to know Maya is the one delivering the message to him
	 * @return 0 Exito; -101 Error interno; -105 Usuario no autenticado; -106 Servicio no disponible; -201 Recepcion estaba en proceso
	 */

    public int configurarURLReceptorSMS(String pasaporte, String password, String receptor,String clave);



//
// pasaporte: Identificacion del pasaporte a utilizar para envio de mensajes </p>
// password: Clave secreta para autenticacion </p>
// Retorna: 0 Exito; -101 Error interno; -105 Usuario no autenticado; -106 Servicio no disponible; -201 Recepcion estaba en proceso; -203 Receptor no configurado


	/**	
	 * @param pasaporte Identificacion del pasaporte a utilizar para envio de mensajes / Passport identification of using the service
	 * @param password Clave secreta para autenticacion / Password for user authentication
	 * @return 0 Exito; -101 Error interno; -105 Usuario no autenticado; -106 Servicio no disponible; -201 Recepcion estaba en proceso; -203 Receptor no configurado
	 */

    public int recibirSMS (String pasaporte, String password);

//
// pasaporte: Identificacion del pasaporte a utilizar para envio de mensajes </p>
// password: Clave secreta para autenticacion </p>
// codPaisDest: Codigo de Pais del numero destinatario </p>
// codAreaDest: Codigo de area del numero destinatario </p>
// numeroDest: Numero telefonico a quien va dirigido el mensaje </p>
// mensaje: Mensaje a ser enviado </p>
// idMensaje: Identificador del mensaje a responder </p>
// Retorna: 0 Exito; -101 Error interno; -104 Destino no aceptado por el operador; -105 Usuario no autenticado; -204 Codigo de pais no soportado; -205 Codigo de area no soportado; -207 Mensaje rechazado

	/**	
	 * @param pasaporte Identificacion del pasaporte a utilizar para envio de mensajes / Passport identification of using the service
	 * @param password Clave secreta para autenticacion / Password for user authentication
	 * @param codPaisDest Codigo de Pais del numero destinatario / Destination Country Code
	 * @param codAreaDest Codigo de area del numero destinatario / Destination Area Code
	 * @param numeroDest Numero telefonico a quien va dirigido el mensaje / Destination phone number
	 * @param mensaje Mensaje a ser enviado / Message to send
	 * @param idMensaje Identificador del mensaje a responder / Identification of the message to respond
	 * @return 0 Exito; -101 Error interno; -104 Destino no aceptado por el operador; -105 Usuario no autenticado; -204 Codigo de pais no soportado; -205 Codigo de area no soportado; -206 Numero no soportado; -207 Mensaje rechazado
	 */

    public int responderSMS(String pasaporte, String password, String codPaisDest, String codAreaDest, String numeroDest, String mensaje, String idMensaje);

//
// pasaporte: Identificacion del pasaporte a utilizar para envio de mensajes </p>
// password: Clave secreta para autenticacion </p>
// Retorna: 0 Exito; -101 Error interno; -105 Usuario no autenticado; -106 Servicio no disponible; -202 Recepcion no estaba en proceso


	/**	
	 * @param pasaporte Identificacion del pasaporte a utilizar para envio de mensajes / Passport identification of using the service
	 * @param password Clave secreta para autenticacion / Password for user authentication
	 * @return 0 Exito; -101 Error interno; -105 Usuario no autenticado; -106 Servicio no disponible; -202 Recepcion no estaba en proceso
	 */

    public int pararRecepcion(String pasaporte, String password);

}
